package server.business.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 患者输血信息表
 * @TableName patient_transfusion_information
 * @author Galaxy
 */
@TableName(value ="patient_transfusion_information")
@Data
public class PatientTransfusionInformation implements Serializable {
    /**
     * 编号
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 创建时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "gmt_create")
    private Date gmtCreate;

    /**
     * 患者姓名
     */
    @TableField(value = "name")
    private String name;

    /**
     * 修改时间
     */
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "gmt_modified")
    private Date gmtModified;

    /**
     * 输血单号
     */
    @TableField(value = "transfusion_number")
    private String transfusionNumber;

    /**
     * 患者编号
     */
    @TableField(value = "patient_id")
    private String patientId;

    /**
     * 创建订单时间
     */
    @TableField(value = "create_time")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 血液类型（弃用）
     */
    @TableField(value = "blood_type")
    private String bloodType;

    /**
     * 血液规格
     */
    @TableField(value = "blood_count")
    private Integer bloodCount;

    /**
     * 科别
     */
    @TableField(value = "department")
    private String department;

    /**
     * 状态
     */
    @TableField(value = "state")
    private String state;

    /**
     * 支付金额
     */
    @TableField(value = "pay_money")
    private BigDecimal payMoney;

    /**
     * 血液ID
     */
    @TableField(value = "blood_id")
    private String bloodId;

    /**
     * 删除标记（0未删除，1删除）
     */
    @TableField(value = "delete_flag")
    private Integer deleteFlag;

    /**
     * ABO血型
     */
    @TableField(value = "abo_blood_type")
    private String aboBloodType;

    /**
     * RH血型
     */
    @TableField(value = "rh_blood_type")
    private String rhBloodType;

    @TableField(exist = false)
    private static final long serialVersionUID = -1793055907020259541L;
}